package com.erp.erp_servers.warehouse;

import com.erp.erp_entitys.warehouse.entity.InitStockEntity;
import com.erp.erp_entitys.warehouse.req.InitStatisticsInfoReq;
import com.erp.erp_entitys.warehouse.req.InitStockListReq;
import com.erp.erp_entitys.warehouse.rsp.InitStatisticsInfoRsp;
import com.erp.erp_entitys.warehouse.rsp.InitStockListRsp;

import java.util.List;

/**
 * @ClassName : IInitStockService
 * @Description : 初始化库存接口
 * @Author : lst
 * @Date: 2020-07-22 13:04
 */
public interface IInitStockService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    InitStockEntity queryById(Integer id);


    /**
     * 通过实体作为筛选条件查询
     *
     * @param initStock 实例对象
     * @return 对象列表
     */
    List<InitStockEntity> queryAll(InitStockEntity initStock);

    /**
     * 获取初始化集合
     * @param req 查询参数
     * @return 查询结果
     */
    List<InitStockListRsp> getListByQuery(InitStockListReq req);

    /**
     * 新增数据
     *
     * @param initStock 实例对象
     * @return 影响行数
     */
    int insert(InitStockEntity initStock);

    /**
     * 修改数据
     *
     * @param initStock 实例对象
     * @return 影响行数
     */
    int update(InitStockEntity initStock);

    /**
     * 初始化统计
     * @param req 实例对象
     * @return 初始化统计
     */
    List<InitStatisticsInfoRsp> getInitStatisticsInfo(InitStatisticsInfoReq req);
}
